Skip to main content

DH_CUSTOMER PR Guide


DH_CUSTOMER PR Guide


1. Overview

This document describes the standard procedure for creating migration-related changes and raising a Pull Request (PR) in the DH_CUSTOMER repository.

The objective of this process is to ensure that migration artifacts are maintained in a structured manner and that all changes are traceable through version control.


2. Prerequisites

Before raising a Pull Request, ensure that:

  • Access to the DH_CUSTOMER repository has been granted.
  • Git is installed and configured.
  • The migration package has been validated.
  • Required seed files and resource files are available.

3. Migration Workflow

Step 1 – Clone the Repository

Clone the DH_CUSTOMER repository to your local machine.

git clone <repository-url>

Verify that the repository has been cloned successfully before proceeding.


Step 2 – Create the Client Development Branch

Create a client-specific development branch.

3.2.1 Naming Convention

<ClientName>-Dev

3.2.2 Example

git checkout -b ABCBANK-Dev

The development branch serves as the base branch for all migration-related activities for the client.


Step 3 – Create the Migration Branch

Create a migration branch from the client development branch.

3.3.1 Naming Convention

<ClientName>-V<MigrationVersion>

3.3.2 Example

git checkout -b ABCBANK-V1.0.0

Each migration should be maintained in a separate branch to ensure proper version tracking and review.


Step 4 – Verify Client Folder Structure

Navigate to the local repository and verify whether a folder already exists for the client.

3.4.1 If the Client Folder Exists

Use the existing folder structure.

3.4.2 If the Client Folder Does Not Exist

Create a new folder using the client name.

3.4.3 Example

DH_CUSTOMER/
└── ABCBANK/


Step 5 – Create Migration Folder

Within the client folder, create a migration-specific folder.

3.5.1 Naming Convention

Use the migration version or migration number.

3.5.2 Example

ABCBANK/
├── MIG1/
└── MIG2/

This folder will contain all migration-related artifacts.


Step 6 – Create Required Subfolders

Inside the migration folder, create the following subfolders.

3.6.1 Folder Structure

MIG1/
├── SEEDS/
└── SH_RESOURCES/

3.6.2 Folder Description

FolderPurpose
SEEDSContains database seed scripts required for migration.
SH_RESOURCESContains updated resource files and configuration artifacts.

Step 7 – Add Migration Files

Place the migration artifacts in the appropriate directories.

3.7.1 SEEDS Folder

Copy all migration seed scripts into:

SEEDS/

3.7.2 SH_RESOURCES Folder

Copy the updated resource files into the SH_RESOURCES directory, replacing the existing files.

SH_RESOURCES/

Ensure that all files are verified before raising the Pull Request.


Step 8 – Verify Changes and Raise PR

Verify that all migration artifacts have been added correctly.

Raise a Pull Request (PR) from the migration branch to the corresponding client development branch.

The Pull Request title should include both the client development branch name and the migration branch name.

3.8.1 Example

ABCBANK-Dev | ABCBANK-V1.0.0 Migration Changes

DH_CUSTOMER/
└── ABCBANK/
└── MIG1/
├── SEEDS/
│ ├── seed_001.sql
│ └── seed_002.sql
└── SH_RESOURCES/
├── config.json
└── resources.xml

5. Best Practices

  • Create a separate migration branch for each migration.
  • Follow the prescribed branch naming conventions.
  • Verify all changes before raising the Pull Request.
  • Use the standard Pull Request title format.